23. 第三方库

22 第三方库和软件包管理器 V2

第三方库

独立开发者编写了成千上万的第三方库!你可以使用 pip 安装这些库。pip 是在 Python 3 中包含的软件包管理器,它是标准 Python 软件包管理器,但并不是唯一的管理器。另一个热门的管理器是 Anaconda,该管理器专门针对数据科学。

要使用 pip 安装软件包,在命令行中输入“pip install”,然后是软件包名称,如下所示: pip install package_name 。该命令会下载并安装该软件包,以便导入你的程序中。安装完毕后,你可以使用从标准库中导入模块时用到的相同语法导入第三方软件包。

使用 requirements.txt 文件

大型 Python 程序可能依赖于十几个第三方软件包。为了更轻松地分享这些程序,程序员经常会在叫做 requirements.txt 的文件中列出项目的依赖项。下面是一个 requirements.txt 文件示例。

beautifulsoup4==4.5.1
bs4==0.0.1
pytz==2016.7
requests==2.11.1

该文件的每行包含软件包名称和版本号。版本号是可选项,但是通常都会包含。不同版本的库之间可能变化不大,可能截然不同,因此有必要使用程序作者在写程序时用到的库版本。

你可以使用 pip 一次性安装项目的所有依赖项,方法是在命令行中输入 pip install -r requirements.txt

实用的第三方软件包

能够安装并导入第三方库很有用,但是要成为优秀的程序员,还需要知道有哪些库可以使用。大家通常通过在线推荐或同事介绍了解实用的新库。如果你是一名 Python 编程新手,可能没有很多同事,因此为了帮助你了解入门信息,下面是优达学城工程师很喜欢使用的软件包列表。(可能部分网站在国内网络中无法打开)

  • IPython - 更好的交互式 Python 解释器
  • requests - 提供易于使用的方法来发出网络请求。适用于访问网络 API。
  • Flask - 一个小型框架,用于构建网络应用和 API。
  • Django - 一个功能更丰富的网络应用构建框架。Django 尤其适合设计复杂、内容丰富的网络应用。
  • Beautiful Soup - 用于解析 HTML 并从中提取信息。适合网页数据抽取。
  • pytest - 扩展了 Python 的内置断言,并且是最具单元性的模块。
  • PyYAML - 用于读写 YAML 文件。
  • NumPy - 用于使用 Python 进行科学计算的最基本软件包。它包含一个强大的 N 维数组对象和实用的线性代数功能等。
  • pandas - 包含高性能、数据结构和数据分析工具的库。尤其是,pandas 提供 dataframe!
  • matplotlib - 二维绘制库,会生成达到发布标准的高品质图片,并且采用各种硬拷贝格式和交互式环境。
  • ggplot - 另一种二维绘制库,基于 R's ggplot2 库。
  • Pillow - Python 图片库可以向你的 Python 解释器添加图片处理功能。
  • pyglet - 专门面向游戏开发的跨平台应用框架。
  • Pygame - 用于编写游戏的一系列 Python 模块。
  • pytz - Python 的世界时区定义。